Synchronization phases (to speed up transactional memory)
نویسندگان
چکیده
We introduce the Sync-Phase technique for software transactional memory. Time is divided into two different alternating phases: computation phases and commit (synchronization) phases. Transactions are only allowed to commit during a commit phase, which allows execution without validation (or the need for cache synchronization) during computation phases. Phases can be determined through time or other means. The technique scales well and it is applicable, whenever a single commit of a transaction triggers certain tasks, e.g. validations of a read set or extending the validity of objects for time-based transactional memory. For evaluation we implemented the Sync-Phase STM technique for DSTM and compared it to other techniques implemented based on DSTM, i.e. the original version and one that uses a commit counter to reduce the number of validations. Benchmarks show that Sync-Phase STM allows much faster execution of transactions in most scenarios and scales better than existing approaches relying on a single commit counter.
منابع مشابه
Hardware-Supported Transactional Memory
In this report, we describe a number of Hardware Transactional Memory (HTM) designs and their basic mechanisms used for better programmability and higher performance than conventional synchronization techniques based on locking. We compare the systems considering their programming model, hardware design challenges, transactional dataset constraints and forward progress guarantees. As high-speed...
متن کاملA Survey Paper on Transactional Memory
The necessity to write concurrent programs is increasing as systems are getting more complex while processor speed increases are slowing down. The current popular solution for parallel programming is to use locks but they contain many known drawbacks that make them a suboptimal solution. Transactional memory is a recent alternative to locks that is gaining a lot of attention in the research com...
متن کاملInvestigating Energy/Performance Tradeoffs using Transactional Memory in a MPSoC Environment
Multi-core architectures have become pervasive in large-scale digital integrated systems. Manufacturers of general-purpose processors have essentially given up trying to increase clock speed, and instead are now focusing on multiprocessor-system-on-a-chip (MPSoC) architectures, in which multiple processors residing on a single chip communicate directly through shared hardware caches, providing ...
متن کاملCondition Variables and Transactional Memory: Problem or Opportunity?
Condition variables complement locks by allowing a program to specify the order of execution. They have been in use, largely unchanged, for three decades and have proved to be a robust and scalable synchronization mechanism. However, most transactional memory (TM) systems provide no complementary mechanism. While new synchronization constructs have been proposed for TM, it seems prudent to supp...
متن کاملCommit Algorithms for Scalable Hardware Transactional Memory
In a hardware transactional memory system with lazy versioning and lazy conflict detection, the process of transaction commit can emerge as a bottleneck. For a large-scale distributed memory system, we propose novel algorithms to implement commit that are deadlockand livelock-free and do not employ any centralized resource. These algorithms improve upon the state-of-the-art by yielding up to 59...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011